
package org.oasis_open.docs.wsn.b_2;

import lombok.Data;
import org.w3c.dom.Element;

import javax.xml.bind.annotation.*;
import javax.xml.datatype.XMLGregorianCalendar;
import javax.xml.ws.wsaddressing.W3CEndpointReference;
import java.util.ArrayList;
import java.util.List;


/**
 * <p>anonymous complex type的 Java 类。
 *
 * <p>以下模式片段指定包含在此类中的预期内容。
 *
 * <pre>
 * &lt;complexType&gt;
 *   &lt;complexContent&gt;
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
 *       &lt;sequence&gt;
 *         &lt;element name="SubscriptionReference" type="{http://www.w3.org/2005/08/addressing}EndpointReferenceType"/&gt;
 *         &lt;element ref="{http://docs.oasis-open.org/wsn/b-2}CurrentTime" minOccurs="0"/&gt;
 *         &lt;element ref="{http://docs.oasis-open.org/wsn/b-2}TerminationTime" minOccurs="0"/&gt;
 *         &lt;any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/&gt;
 *       &lt;/sequence&gt;
 *     &lt;/restriction&gt;
 *   &lt;/complexContent&gt;
 * &lt;/complexType&gt;
 * </pre>
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
//        "subscriptionReference",
//        "currentTime",
//        "terminationTime",
//        "any",
        "fault",
        "successMessge"
})
@XmlRootElement(name = "SubscribeResponse")
@Data
public class SubscribeResponse {

    //    @XmlElement(name = "SubscriptionReference", required = true)
//    protected W3CEndpointReference subscriptionReference;
//    @XmlElement(name = "CurrentTime")
//    @XmlSchemaType(name = "dateTime")
//    protected XMLGregorianCalendar currentTime;
//    @XmlElement(name = "TerminationTime", nillable = true)
//    @XmlSchemaType(name = "dateTime")
//    protected XMLGregorianCalendar terminationTime;
//    @XmlAnyElement(lax = true)
//    protected List<Object> any;
    @XmlElement(name = "fault")
    protected String fault;
    @XmlElement(name = "successMessge")
    protected String successMessge;
//    /**
//     * 获取subscriptionReference属性的值。
//     *
//     * @return
//     *     possible object is
//     *     {@link W3CEndpointReference }
//     *
//     */
//    public W3CEndpointReference getSubscriptionReference() {
//        return subscriptionReference;
//    }
//
//    /**
//     * 设置subscriptionReference属性的值。
//     *
//     * @param value
//     *     allowed object is
//     *     {@link W3CEndpointReference }
//     *
//     */
//    public void setSubscriptionReference(W3CEndpointReference value) {
//        this.subscriptionReference = value;
//    }
//
//    /**
//     * 获取currentTime属性的值。
//     *
//     * @return
//     *     possible object is
//     *     {@link XMLGregorianCalendar }
//     *
//     */
//    public XMLGregorianCalendar getCurrentTime() {
//        return currentTime;
//    }
//
//    /**
//     * 设置currentTime属性的值。
//     *
//     * @param value
//     *     allowed object is
//     *     {@link XMLGregorianCalendar }
//     *
//     */
//    public void setCurrentTime(XMLGregorianCalendar value) {
//        this.currentTime = value;
//    }
//
//    /**
//     * 获取terminationTime属性的值。
//     *
//     * @return
//     *     possible object is
//     *     {@link XMLGregorianCalendar }
//     *
//     */
//    public XMLGregorianCalendar getTerminationTime() {
//        return terminationTime;
//    }
//
//    /**
//     * 设置terminationTime属性的值。
//     *
//     * @param value
//     *     allowed object is
//     *     {@link XMLGregorianCalendar }
//     *
//     */
//    public void setTerminationTime(XMLGregorianCalendar value) {
//        this.terminationTime = value;
//    }
//
//    /**
//     * Gets the value of the any property.
//     *
//     * <p>
//     * This accessor method returns a reference to the live list,
//     * not a snapshot. Therefore any modification you make to the
//     * returned list will be present inside the JAXB object.
//     * This is why there is not a <CODE>set</CODE> method for the any property.
//     *
//     * <p>
//     * For example, to add a new item, do as follows:
//     * <pre>
//     *    getAny().add(newItem);
//     * </pre>
//     *
//     *
//     * <p>
//     * Objects of the following type(s) are allowed in the list
//     * {@link Object }
//     * {@link Element }
//     *
//     *
//     */
//    public List<Object> getAny() {
//        if (any == null) {
//            any = new ArrayList<Object>();
//        }
//        return this.any;
//    }

}
